DAY29:Array.diff


Posted by birdbirdmurmur on 2023-08-11

題目連結

https://www.codewars.com/kata/523f5d21c841566fde000009

解法

第一版

function arrayDiff(a, b) {
  let result = []
  for (let i=0; i<a.length; i++){
    let diff = false

    for (let j=0; j<b.length; j++){
      if ( a[i] === b[j] ){
        diff = true
        break
      }
    }
    if (!diff){
      result.push(a[i])
    }
  }
  return result
}

第二版

function arrayDiff(a, b) {
  return a.filter(item => !b.includes(item));
}

筆記

第一版用雙迴圈的方式一一比對
並設一個變數diff來控制true&false
在第二個迴圈中 加入break確保可以先跳出來
a[i]加入到result裡面

第二版
快速的使用filter篩選兩個陣列中不一樣的地方
篩選a陣列 回傳一個箭頭函式
b陣列裡頭找
找不到的才回傳


#javascript #Codewars #filter #includes







Related Posts

Leetcode  JS 2623. Memoize 簡易筆記

Leetcode JS 2623. Memoize 簡易筆記

.Net MVC authorization Controller and Workcontext extension in razor view

.Net MVC authorization Controller and Workcontext extension in razor view

[Notes] 關於企業生產上的一些小知識(1)

[Notes] 關於企業生產上的一些小知識(1)


Comments